38 research outputs found

    A Model-Driven Approach to Systems-of-Systems Engineering

    Get PDF
    Traditional engineering aims to solve problems by building, operating, maintaining and retiring systems of various kinds. However, problems usually emerge within dynamically complex environments of co-evolving technology, people, processes and other problems. Because of this, individual problems are often difficult to isolate and independently solve. It is generally accepted that these dynamically complex sets of interacting problems, or Problem Situations, are best dealt with by improving the whole rather than by attempting to solve individual problems. In recent years our research group has been thinking about the nature of engineering within such environments and has developed Aspect-Oriented Thinking (AOT): a novel model-driven engineering approach to continuous learning and improvement within dynamically complex environments. In this paper I provide an overview of AOT and show how it might form the foundation of an effective systems-of-systems engineering methodology

    On Evaluating Commercial Cloud Services: A Systematic Review

    Full text link
    Background: Cloud Computing is increasingly booming in industry with many competing providers and services. Accordingly, evaluation of commercial Cloud services is necessary. However, the existing evaluation studies are relatively chaotic. There exists tremendous confusion and gap between practices and theory about Cloud services evaluation. Aim: To facilitate relieving the aforementioned chaos, this work aims to synthesize the existing evaluation implementations to outline the state-of-the-practice and also identify research opportunities in Cloud services evaluation. Method: Based on a conceptual evaluation model comprising six steps, the Systematic Literature Review (SLR) method was employed to collect relevant evidence to investigate the Cloud services evaluation step by step. Results: This SLR identified 82 relevant evaluation studies. The overall data collected from these studies essentially represent the current practical landscape of implementing Cloud services evaluation, and in turn can be reused to facilitate future evaluation work. Conclusions: Evaluation of commercial Cloud services has become a world-wide research topic. Some of the findings of this SLR identify several research gaps in the area of Cloud services evaluation (e.g., the Elasticity and Security evaluation of commercial Cloud services could be a long-term challenge), while some other findings suggest the trend of applying commercial Cloud services (e.g., compared with PaaS, IaaS seems more suitable for customers and is particularly important in industry). This SLR study itself also confirms some previous experiences and reveals new Evidence-Based Software Engineering (EBSE) lessons

    Aspect-Oriented Thinking - An approach to bridging the disciplinary divides

    No full text
    Engineering is often described as the application of scientific and technical knowledge to solve problems. In this thesis, I support a more general view that engineering should be treated as a continuous process of learning and action that aims to make well understood improvements within dynamically complex environments of co-evolving social, man-made and natural systems. I argue that this can only be achieved by adopting an approach that systematically develops, manages and integrates the knowledge and expertise of many disciplines to conceive, develop, modify, operate and retire systems. A novel implementation of such an approach, called Aspect-Oriented Thinking, is presented. ¶ Aspect-Oriented Thinking begins with the development and verification of a set of domain Models. Each Domain Model represents knowledge about a separate, autonomous and possibly discipline specific concern or view within a given context. Domain models are developed by engineers, scientists, sociologists, psychologists, lawyers, philosophers, economists and others, using languages and techniques with which they are familiar. Knowledge captured in a set of Domain Models is then woven together, in accordance with a set of separately developed patterns and rules, to construct, modify, operate and retire systems, including models, hardware, software, processes and simulations. This is a continuous process which, in the first instance, involves those systems used to learn about a given context and to make decisions regarding required changes. Later, the process involves those systems used to implement and evaluate the impact of these decisions. ¶ The significance of Aspect-Oriented Thinking lies in its broad applicability to any situation in which the expertise and knowledge of diverse disciplines is required to understand and make improvements within complex multifaceted environments such as those that involve sustainable development and national security. ¶ A proof-of-concept within the context of software engineering is provided to demonstrate the mechanics and viability of Aspect-Oriented Thinking. The results of this demonstration are used to support an argument for future experimentation aimed at evaluating the effectiveness of Aspect-Oriented Thinking in a more general interdisciplinary environment

    Rethinking Systems Thinking

    No full text

    A Conceptual Model of Software Engineering Research Approaches

    No full text
    A key motivation for undertaking software engineering research is a need to improve industrial software engineering practice. In order to address this need, it is necessary to adopt an approach to research that responds to industry problems and facilitates the orderly evaluation, adoption and continuous improvement of research outputs. This paper proposes a simple conceptual model which can be used to describe, discuss and compare a broad range of research approaches. The model is validated by using it to unify prior contributions in the area of software engineering research approaches and presenting a case study

    Using Java APIs with native Ada compilers

    No full text

    Simulating Industry: An Innovative Software Engineering Capstone Design Course

    No full text
    Universities are required to produce graduates with good technical knowledge and 'employability skills' such as communication, team work, problem-solving, initiative and enterprise, planning, organizing and self-management. The capstone software developm
    corecore